function MiscUtils() {
};

MiscUtils.unique = function() {
  return new Date().getTime() * Math.random();
};

MiscUtils.encode = function(str) {
  return encodeURI(encodeURI(str));
};

MiscUtils.clone = function(object) {
  return JSON.parse(JSON.stringify(object));
};

MiscUtils.dialog = function(popupBox, pos, content, func1, func2) {
  var table, tr, td, btn;
  
  table = document.createElement('table');
  popupBox._open(table, { pos: pos });
  tr = table.insertRow(-1);
  td = tr.insertCell(-1);
  td.appendChild(content);
  tr = table.insertRow(-1);
  td = tr.insertCell(-1);
  if (func1 || func2) {
    if (func1) {
      btn = DOMUtils.createInput(null, null, 'button', 'OK', null);
      btn.onclick = func1;
      td.appendChild(btn);
    }
    if (func2) {
      btn = DOMUtils.createInput(null, null, 'button', 'Cancel', null);
      btn.onclick = func2;
      td.appendChild(btn);
    }
  }
};
